package com.lfd.service;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.lfd.vo.OptionVo;
import com.lfd.vo.ProductVo;
import com.lfd.entity.Product;

public interface ProductService {
	/**
	 * 查询总数
	 * 
	 * @return
	 */
	int CountAll();

	/***
	 * 查询
	 * @param student
	 * @param page
	 * @param limit
	 * @return
	 */
	List<ProductVo> queryList(Product product, Integer page, Integer limit);

	/**
	 * 添加
	 * 
	 * @param product
	 */
	void addOne(Product product);

	/**
	 * 下拉框
	 * 
	 * @return
	 */
	List<OptionVo> selectOptions();

	/**
	 * 根据ids进行批量删除
	 * 
	 * @param ids
	 */
	void batchDel(List<Long> ids);

	/***
	 * 根据id渲染数据
	 * 
	 * @param pid
	 * @return
	 */
	ProductVo selectVo(@Param("pid")  Long pid);

	/**
	 * 根据id进行修改
	 * 
	 * @param 
	 */
	void updateByid(Product product);

	/**
	 * 根具id进行单行删除
	 * 
	 * @param id
	 * @return
	 */
	void deleteById(Long id);
	
	/**
	 * 批量下架
	 * 
	 * @param ids
	 */
	void batchDown(List<Integer> ids);
	
	/**
	 * 批量上架
	 * 
	 * @param ids
	 */
	void batchOn(@Param("ids") List<Integer> ids);
	
	
	/**
	 * 推荐商品
	 * @return
	 */
	List<ProductVo> Ptj();
	
	
	/**
 	 * 热销商品
 	 * @return
 	 */
      List<ProductVo> rx();
     

  	/**
  	 * 轮播图
  	 * @return
  	 */
       List<ProductVo> lpt();
	
}
